草庐IT

相当于 PyQuery 或 Nokogiri 的 PHP?

全部标签

ruby - Nokogiri递归地得到所有 child

问题我正在针对各种URL运行一些统计数据。我想找到child数量最集中的顶级元素。我想遵循的方法是识别所有顶级元素,然后确定页面上所有元素的百分比属于它。目标递归地获取给定元素的所有子元素。输入:一个Nokogiri元素输出:Nokogiri元素数组或child总数设置ruby1.9.2Nokogirigem我最终得出的结果(这可行,但不如我在下面选择的答案那么漂亮)getChildCount(elem)children=elem.childrenreturn0unlesschildrenandchildren.count>0child_count=children.countchil

ruby - 我如何使用 nokogiri 验证 XHTML?

我发现一些帖子暗示您可以使用nokogirigem根据其DTD验证XHTML。虽然我已经成功地使用它来解析XHTML(寻找“a”标签等),但我正在努力验证文档。对我来说,这是:doc=Nokogiri::XML(Net::HTTP.get(URI.parse("http://www.w3.org")))putsdoc.validate结果是:[#,#,#,#,#,#所以我假设这不是正确的方法。我似乎找不到任何好的例子-谁能指出我做错了什么?我在MacOSX10.5.8上运行ruby​​1.8.6。Nokogiri告诉我:nokogiri:1.3.3warnings:[]libxml:c

ruby - 使用 Nokogiri 向元素添加类

显然是Nokogiri的add_class方法仅适用于NodeList,使此代码无效:doc.search('a').eachdo|anchor|anchor.inner_text="hello!"anchor.add_class("whatever")#WHOOPS!end我该怎么做才能使这段代码正常工作?我想应该是这样的doc.search('a').eachdo|anchor|anchor.inner_text="hello!"Nokogiri::XML::NodeSet.new(anchor).add_class("whatever")end但这也行不通。请告诉我,我不必为单个

ruby - 相当于 Iconv.conv ("UTF-8//IGNORE",...) 在 Ruby 1.9.X 中?

我正在从远程源读取数据,偶尔会得到一些采用另一种编码的字符。它们并不重要。我想得到一个“最佳猜测”的utf-8字符串,并忽略无效数据。主要目标是获得一个我可以使用的字符串,并且不会遇到以下错误:Encoding::UndefinedConversionError:从ASCII-8BIT到UTF-8的“\xFF”:utf-8中的无效字节序列 最佳答案 我以为是这样:string.encode("UTF-8",:invalid=>:replace,:undef=>:replace,:replace=>"?")将用“?”替换所有已知项。要

ruby-on-rails - 安装 nokogiri Mac OS X 10.8.2 XCode 安装

尝试在MountainLion上安装nokogiri。我使用的是ruby​​1.8.7,但刚刚升级到1.9.3,但它阻止了捆绑安装的工作。顺便说一下,我可以通过卸载ruby​​1.9.3并恢复到1.8.7来解决这个问题。然而,这显然是一个次优的解决方案,因为我不想在剩下的时间里一直停留在1.8.7上......Users-MacBook-Pro:sample_appuser$lsGemfileappdocscriptGemfile.lockconfiglibspecREADME.mdconfig.rulogtmpRakefiledbpublicvendorRavins-MacBook-

php - Ruby 和 PHP HMAC 不一致

我尝试在Ruby中创建一个HMAC,然后在PHP中验证它。ruby:require'openssl'message="A522EBF2-5083-484D-99D9-AA97CE49FC6C,1234567890,/api/comic/aWh62,GET"key="3D2143BD-6F86-449F-992C-65ADC97B968B"hash=OpenSSL::HMAC.hexdigest('sha256',message,key)phashPHP:对于Ruby,我得到:20e3f261b762e8371decdf6f42a5892b530254e666508e885c708c5b

ruby-on-rails - rails 控制台要求 nokogiri 返回 false(但在 irb 中工作)

我的环境是ruby1.9.3p327和rails3.2.8onamac。我将gemnokogiri添加到我的Gemfile中。运行bundleinstall命令。命令显示Usingnokogiri(1.5.5)和gemlist命令返回nokogiri(1.5.5)。在Rails控制台中require'nokogiri'返回false但在irb中它返回true。这怎么可能? 最佳答案 根据theAPIdocumentation的前两行,require将:如果加载成功返回true如果已经加载则返回false如果找不到文件则引发LoadE

php - Facebook 扼杀了公共(public) RSS 提要;如何获取带有新时间线的 Facebook 页面 RSS?

我正在尝试从Facebook提取一个页面提要到RSS,但是每次我尝试尝试时,我都会在XML中返回一个错误,内容如下:">https://www.facebook.com/profile.php?id=</a>]]>我使用的网址是:https://www.facebook.com/feeds/page.php?id=&format=rss20&access_token=我没有设置年龄限制,也没有国家/地区限制:此外,我已经尝试过使用和不使用访问token。如以下评论所述,JSONURL确实有效:https://graph.facebook.com//feed&

ruby - nokogiri 不会安装 - 错误 : Failed to build gem native extension

这个问题在这里已经有了答案:`require':nosuchfiletoload--mkmf(LoadError)(10个答案)关闭9年前。在ubuntu12.04上,我得到以下信息。sudoapt-getinstalllibxml2libxml2-devlibxsltlibxslt-devsudogeminstallnokogiriBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingnokogiri:ERROR:Failedtobuildgemnativeextension./usr/bin/ruby

ruby-on-rails - 在 ubuntu 服务器上部署 capistrano 时关于 nokogiri 的错误

虽然bundle:install阶段在deploy:finalize_update之后,但我收到有关nokogiri的错误。它表明,**[out::*******]Makesurethat`geminstallnokogiri-v'1.6.0'`succeedsbeforebundling.所以我尝试自己在服务器上安装nokogiri。但是它给出了以下错误,Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingnokogiri:ERROR:Failedtobuildgemnativeextension./